package main

import "fmt"

/*
* Author: JacksonCoder
* CreateTime: 2025/5/20
 */

type Student3 struct {
	Name string
}

func TestType(items ...interface{}) {
	for k, v := range items {
		switch v.(type) {
		case string:
			fmt.Printf("type is string, %d[%v]\n", k, v)
		case bool:
			fmt.Printf("type is bool, %d[%v]\n", k, v)
		case int:
			fmt.Printf("type is int, %d[%v]\n", k, v)
		case float32, float64:
			fmt.Printf("type is float, %d[%v]\n", k, v)
		case Student3:
			fmt.Printf("type is Student3, %d[%v]\n", k, v)
		case *Student3:
			fmt.Printf("type is Student3 Point, %d[%v]\n", k, v)
		}
	}
}

func main() {
	var stu Student3
	TestType("alen", 100, stu, 903.43)
}
